#ifndef THREAD_OO_H
#define THREAD_OO_H

#include <thread>
#include <pthread.h>
#include <functional>

class Thread
{
public:
    Thread();
    virtual ~Thread();

    void start();
    void join();
    virtual void run() = 0;

    static void* runInThread(void *arg);
public:
    pthread_t m_pid;
    bool m_isJoin;
    bool m_isStart;
};

#endif // THREAD_OO_H
